package ar.com.age.distribuidora.service.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;

import ar.com.age.distribuidora.dao.MarcaDao;
import ar.com.age.distribuidora.dao.TipoProductoDao;
import ar.com.age.distribuidora.dao.UnidadMedidaDao;
import ar.com.age.distribuidora.dominio.Marca;
import ar.com.age.distribuidora.dominio.TipoProducto;
import ar.com.age.distribuidora.dominio.UnidadMedida;
import ar.com.age.distribuidora.service.DatosProductoService;

public class DatosProductoServiceImpl implements DatosProductoService {

	private TipoProductoDao tipoProductoDao; 
	
	private MarcaDao marcaDao;
	
	private UnidadMedidaDao unidadMedidaDao;
	
	@Autowired(required = true)
	public void setTipoProductoDao(TipoProductoDao tipoProductoDao) {
		this.tipoProductoDao = tipoProductoDao;
	}
    
    @Autowired(required = true)
	public void setMarcaDao(MarcaDao marcaDao) {
		this.marcaDao = marcaDao;
	}
    
    @Autowired(required = true)
   	public void setUnidadMedidaDao(UnidadMedidaDao unidadMedidaDao) {
   		this.unidadMedidaDao = unidadMedidaDao;
   	}
    
    @Override
	public void crearOEditarTipoProducto(TipoProducto tipoProducto) {
		
    	tipoProductoDao.saveOrUpdate(tipoProducto);		
	}

	@Override
	public List<TipoProducto> buscarTodosTipoProducto() {

		return tipoProductoDao.getAll();
	}
	
	@Override
	public void crearOEditarMarca(Marca marca) {
		
		marcaDao.saveOrUpdate(marca);		
	}

	@Override
	public List<Marca> buscarTodosMarca() {

		return marcaDao.getAll();
	}
	
	@Override
	public void crearOEditarUnidadMedida(UnidadMedida unidadMedida) {
		
		unidadMedidaDao.saveOrUpdate(unidadMedida);		
	}

	@Override
	public List<UnidadMedida> buscarTodosUnidadMedida() {

		return unidadMedidaDao.getAll();
	}
}
